定义函数


  可以将函数分成两类:没有返回值的函数和有返回值的函数。

  ● 没有返回值的函数称为 void 函数,其通用格式如下:

    void functionName(parameterList)
    {
        statement(s)
        return;    // 可选
    }

  其中,parameterList 指定了传递给函数的参数类型和数量。

  举例:

    void cheers(int n)    // 没有返回值
    {
        for(int i = 0; i < n; i++)
        {
            std::cout << "Cheers! ";
        }
        std::cout << std::endl;
    }

  参数列表 int n 意味着调用函数 cheers() 时,应将一个 int 值作为参数传递给它。

  ● 有返回值的函数将生成一个值,并将它返回给调用函数。其通用格式如下:

    typeName functionName(parameterList)
    {
        statements
        return value;
    }

  对于有返回值的函数,必须使用返回语句,以便将值返回给调用函数。值本身可以是常量、变量,也可以是表达式,只是其结果的类型必须为 typeName(例如,如果声明的返回类型为 double,而函数返回一个 int 值将被强制转换为 double 类型)。然后,函数将最终的值返回给调用函数。

  C++ 对于返回值的类型有一定的限制:不能是数组,但可以是其他任何类型---整数、浮点数、指针,甚至可以是结构和对象!(有趣的是,虽然 C++ 函数不能直接返回数组,但可以将数组作为结构或对象组成部分来返回。)

  函数在执行返回语句后结束。如果函数包含多条返回语句,则函数在执行遇到第一条返回语句后结束。

  举例:

    int bigger(int a, int b)
    {
        if (a > b)
            return a;
        else
            return b;
    }

🔚